RoundHSS_Shape Example
See link below for the current RoundHSS_Shapes from the AISC v16 steel database.
Constructing a RoundHSS_Shape:
Before constructing, import the AISCSteel
package. Also import the StructuralUnits
package since we will use it later on.
using StructuralUnits
import AISCSteel
import AISCSteel.Shapes.RoundHSS_Shapes as rhss
Now that the package has been imported, lets construct a HSS20.000x0.500.
rhss_shape = rhss.RoundHSS_Shape("HSS20.000x0.500", F_y=46ksi)
AISCSteel.Shapes.RoundHSS_Shapes.RoundHSS_Shape("HSS20.000X0.500", 104.0 plf, 28.5 inch^2, 20.0 inch, 0.5 inch, 0.465 inch, 1360.0 inch^4, 177.0 inch^3, 136.0 inch^3, 6.91 inch, 1360.0 inch^4, 177.0 inch^3, 136.0 inch^3, 6.91 inch, 2720.0 inch^4, 272.0 inch^3, 29000.0 ksi, 46.0 ksi)
The following went and searched through the AISC v16 steel database and pulled the relevant info to construct a RoundHSS_Shape
. You can now access information in the struct like so:
The overall diameter of the shape:
rhss_shape.OD
20.0 inch
The weight of the RoundHSS_Shape:
rhss_shape.weight
104.0 plf
Compression Capacity of HSS_Shape:
See link below for the available functions relating to compression for the RoundHSS_Shape member:
We can calculate the compressive capacity of the HSS20.000x0.500 shape we just constructed:
L_cx = L_cy = 18ft
ϕ_c = 0.9
P_n = rhss.Compression.calc_Pn(rhss_shape, L_cx, L_cy)
ϕP_n = ϕ_c * P_n
1104.8398137124038 kip
Lets see what the calc_Pn
function did:
using Handcalcs
set_handcalcs(precision=2) # sets number of decimals displayed
@handcalcs P_n = rhss.Compression.calc_Pn(rhss_shape, L_cx, L_cy)
\[\begin{aligned} D &= OD = 20\;\mathrm{inch} \\[10pt] t &= t_{des} = 0.47\;\mathrm{inch} \\[10pt] \lambda &= \frac{D}{t} = \frac{20\;\mathrm{inch}}{0.47\;\mathrm{inch}} = 43.01 \\[10pt] \lambda_{r} &= \frac{0.11 \cdot E}{F_{y}} = \frac{0.11 \cdot 29000\;\mathrm{ksi}}{46\;\mathrm{ksi}} = 69.35 \\[10pt] \text{Since: }\lambda \leq \lambda_{r} &= 43.01 \leq 69.35 = true \\[10pt] \lambda_{class} &= nonslender \\[10pt] D &= OD = 20\;\mathrm{inch} \\[10pt] t &= t_{des} = 0.47\;\mathrm{inch} \\[10pt] \text{Since: }\frac{L_{cx}}{r_{x}} \geq \frac{L_{cy}}{r_{y}} &= \frac{18\;\mathrm{ft}}{6.91\;\mathrm{inch}} \geq \frac{18\;\mathrm{ft}}{6.91\;\mathrm{inch}} = true \\[10pt] L_{c} &= L_{cx} = 18\;\mathrm{ft} \\[10pt] r &= r_{x} = 6.91\;\mathrm{inch} \\[10pt] F_{e} &= \frac{\pi^{2} \cdot E}{\left( \frac{L_{c}}{r} \right)^{2}} = \frac{3.14^{2} \cdot 29000\;\mathrm{ksi}}{\left( \frac{18\;\mathrm{ft}}{6.91\;\mathrm{inch}} \right)^{2}} = 292.92\;\mathrm{ksi} \\[10pt] \text{Since: }\frac{L_{c}}{r} \leq 4.71 \cdot \sqrt{\frac{E}{F_{y}}} &= \frac{18\;\mathrm{ft}}{6.91\;\mathrm{inch}} \leq 4.71 \cdot \sqrt{\frac{29000\;\mathrm{ksi}}{46\;\mathrm{ksi}}} = true \\[10pt] F_{n} &= 0.66^{\frac{F_{y}}{F_{e}}} \cdot F_{y} = 0.66^{\frac{46\;\mathrm{ksi}}{292.92\;\mathrm{ksi}}} \cdot 46\;\mathrm{ksi} = 43.07\;\mathrm{ksi} \\[10pt] \text{Since: }\lambda_{class} &= nonslender = true \\[10pt] P_{n} &= F_{n} \cdot A_{g} = 43.07\;\mathrm{ksi} \cdot 28.5\;\mathrm{inch}^{2} = 1227.6\;\mathrm{kip} \end{aligned}\]
Flexure Capacity of RoundHSS_Shape:
See link below for the available functions relating to flexure for the RoundHSS_Shape member:
Compact Shape
We can calculate the flexural capacity of the HSS20.000x0.500 shape we just constructed:
ϕ_b = 0.9
M_n = rhss.Flexure.calc_Mn(rhss_shape)
ϕM_nx = ϕ_b * M_n
610.6500000000001 ft kip
Lets see what the calc_Mn
function did:
@handcalcs M_n = rhss.Flexure.calc_Mn(rhss_shape)
\[\begin{aligned} \lambda &= \frac{D}{t} = \frac{20\;\mathrm{inch}}{0.47\;\mathrm{inch}} = 43.01 \\[10pt] \lambda_{p} &= \frac{0.07 \cdot E}{F_{y}} = \frac{0.07 \cdot 29000\;\mathrm{ksi}}{46\;\mathrm{ksi}} = 44.13 \\[10pt] \lambda_{r} &= \frac{0.31 \cdot E}{F_{y}} = \frac{0.31 \cdot 29000\;\mathrm{ksi}}{46\;\mathrm{ksi}} = 195.43 \\[10pt] \text{Since: }\lambda \leq \lambda_{p} &= 43.01 \leq 44.13 = true \\[10pt] \lambda_{class} &= compact \\[10pt] M_{p} &= F_{y} \cdot Z = 46\;\mathrm{ksi} \cdot 177\;\mathrm{inch}^{3} = 678.5\;\mathrm{ft}\,\mathrm{kip} \\[10pt] M_{nFY} &= M_{p} = 678.5\;\mathrm{ft}\,\mathrm{kip} \\[10pt] \text{Since: }\lambda_{class} &= compact = true \\[10pt] M_{nLB} &= M_{p} = 678.5\;\mathrm{ft}\,\mathrm{kip} \\[10pt] M_{n} &= \mathrm{min}\left( M_{nY}, M_{nLB} \right) = \mathrm{min}\left( 678.5\;\mathrm{ft}\,\mathrm{kip}, 678.5\;\mathrm{ft}\,\mathrm{kip} \right) = 678.5\;\mathrm{ft}\,\mathrm{kip} \end{aligned}\]
Non-Compact Shape
We can calculate the flexural capacity of the HSS20.000x0.375 shape:
rhss_shape = rhss.RoundHSS_Shape("HSS20.000x0.375", F_y=46ksi)
ϕ_b = 0.9
M_n = rhss.Flexure.calc_Mn(rhss_shape)
ϕM_nx = ϕ_b * M_n
441.69099000000006 ft kip
Lets see what the calc_Mn
function did:
using Handcalcs
@handcalcs M_n = rhss.Flexure.calc_Mn(rhss_shape)
\[\begin{aligned} \lambda &= \frac{D}{t} = \frac{20\;\mathrm{inch}}{0.35\;\mathrm{inch}} = 57.31 \\[10pt] \lambda_{p} &= \frac{0.07 \cdot E}{F_{y}} = \frac{0.07 \cdot 29000\;\mathrm{ksi}}{46\;\mathrm{ksi}} = 44.13 \\[10pt] \lambda_{r} &= \frac{0.31 \cdot E}{F_{y}} = \frac{0.31 \cdot 29000\;\mathrm{ksi}}{46\;\mathrm{ksi}} = 195.43 \\[10pt] \text{Since: }\lambda_{p} < \lambda \leq \lambda_{r} &= 44.13 < 57.31 \leq 195.43 = true \\[10pt] \lambda_{class} &= noncompact \\[10pt] M_{p} &= F_{y} \cdot Z = 46\;\mathrm{ksi} \cdot 135\;\mathrm{inch}^{3} = 517.5\;\mathrm{ft}\,\mathrm{kip} \\[10pt] M_{nFY} &= M_{p} = 517.5\;\mathrm{ft}\,\mathrm{kip} \\[10pt] \text{Since: }\lambda_{class} &= noncompact = true \\[10pt] M_{nLB} &= \left( \frac{0.02 \cdot E}{\frac{D}{t}} + F_{y} \right) \cdot S = \left( \frac{0.02 \cdot 29000\;\mathrm{ksi}}{\frac{20\;\mathrm{inch}}{0.35\;\mathrm{inch}}} + 46\;\mathrm{ksi} \right) \cdot 104\;\mathrm{inch}^{3} = 490.77\;\mathrm{ft}\,\mathrm{kip} \\[10pt] M_{n} &= \mathrm{min}\left( M_{nY}, M_{nLB} \right) = \mathrm{min}\left( 517.5\;\mathrm{ft}\,\mathrm{kip}, 490.77\;\mathrm{ft}\,\mathrm{kip} \right) = 490.77\;\mathrm{ft}\,\mathrm{kip} \end{aligned}\]